package com.stateflow.engine.user.biz.service;

import com.stateflow.facade.common.model.req.CommonRequest;
import com.stateflow.facade.common.model.res.CommonResult;
import com.stateflow.facade.dto.req.StateFlowRequestDTO;
import com.stateflow.facade.dto.notify.StateFlowNotifyDTO;
import com.stateflow.facade.dto.req.GetOperatorListRequestDTO;

/**
 * Created by weiqingming on 2019/12/10.
 * 状态流转业务层
 */
public interface StateFlowService {

    /**
     * 状态流转
     * @param request
     * @see StateFlowRequestDTO
     *
     * @return
     * @see StateFlowNotifyDTO
     */
    CommonResult stateFlow(CommonRequest request);


    /**
     * 获取某状态下的操作列表
     * @param request
     * @see GetOperatorListRequestDTO
     *
     * @return
     * List<OperatorDTO>
     */
    CommonResult getOperatorList(CommonRequest request);
}
